/**
* @file statistics.h
* @author Jan Sliacky
* 
* Header file for statistics.c
*
* April 2010
*
* Copyright (c) 2009 by Jan Sliacky
* All rights reserved.
*/

#ifndef STATISTICS_H
#define STATISTICS_H

float computeTime(struct timeval t1, struct timeval t2);
float computeTimeWithActual(struct timeval t1);
void incNFalls(void);
void incNInterMessages(void);
void incNSends(void);
void incNBC(void);
void incNOFFSends(void);
void incNNeedWorkBC(void);
void incNWantUnassignBC(void);
void addToExpectedTime(float tValue);
struct timeval addTimeToActual(float addPart);
void startTimer(void);
float getTimer(void);
void setStartTotalTime(void);
void setEndTotalTime(void);
void setStartWasteTime(void);
void setEndWasteTime(void);
void setStartSolveTasksTime(void);
void setStartFallTime(void);
void setEndFallTime(void);
void setEndSolveTasksTime(void);
void addMySolvedTask(int tID, float tValue);
int saveLocalStatistics(char *name, int proc_rank);
int saveGlobalStatistics(char *inputfilename, int proc_count);

#endif
